package io.finer.erp.jeecg.bas.dto;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @Description: 销售订单列表对象
 * @Author: xx
 * @Date:   2021-08-23
 * @Version: V1.0
 */
@ApiModel(value="销售订单列表对象", description="销售订单列表DTO")
@Data
public class ZrkShopOrderDTO implements Serializable {
    private static final long serialVersionUID = 1L;

    /**主键*/
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    @Dict(dictTable = "sys_user", dicText = "realname", dicCode = "username")
    private java.lang.String createBy;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    @Dict(dictTable = "sys_user", dicText = "realname", dicCode = "username")
    private java.lang.String updateBy;
    /**更新日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
    /**客户id*/
    @ApiModelProperty(value = "客户id")
    @Dict(dictTable = "bas_customer",dicText = "name",dicCode = "id")
    private String customerId;
    /**客户名称*/
    @Excel(name = "客户名称", width = 15, dictTable = "bas_customer", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "客户名称")
    private java.lang.String customerName;
    /**客户手机号*/
    @Excel(name = "客户手机号", width = 15)
    @ApiModelProperty(value = "客户手机号")
    private java.lang.String customerMobile;
    /**客户地址*/
    @Excel(name = "客户地址", width = 15)
    @ApiModelProperty(value = "客户地址")
    private java.lang.String customerAddress;
    /**订单状态*/
    @Excel(name = "订单状态", width = 15, dicCode = "orderStatus")
    @Dict(dicCode = "orderStatus")
    @ApiModelProperty(value = "订单状态")
    private java.lang.String orderStatus;
    /**业务员*/
    @Excel(name = "业务员", width = 15, dictTable = "sys_user", dicText = "realname", dicCode = "id")
    @Dict(dictTable = "sys_user", dicText = "realname", dicCode = "id")
    @ApiModelProperty(value = "业务员")
    private java.lang.String salsUser;
    /**是否生成工单*/
    @Excel(name = "是否生成工单", width = 15, dicCode = "yn")
    @Dict(dicCode = "yn")
    @ApiModelProperty(value = "是否生成工单")
    private java.lang.String isPush;
    /**支付类型*/
    @Excel(name = "支付类型", width = 15)
    @ApiModelProperty(value = "支付类型")
    @Dict(dicCode = "sale_order_pay_type")
    private java.lang.String payType;
    /**订单备注*/
    @Excel(name = "生产备注", width = 15)
    @ApiModelProperty(value = "生产备注")
    private java.lang.String productionRemarks;
    /**订单编号*/
    @Excel(name = "订单编号", width = 15)
    @ApiModelProperty(value = "订单编号")
    private java.lang.String orderNo;
    /**货运方式*/
    @Excel(name = "货运方式", width = 15)
    @ApiModelProperty(value = "货运方式")
    @Dict(dictTable = "zrk_delivery_method", dicText = "name", dicCode = "id")
    private java.lang.String expressType;
    /**是否已作废*/
    @Dict(dicCode = "yn")
    private java.lang.String delFlag;
    /**产品名称*/
    @Excel(name = "产品名称", width = 15)
    @ApiModelProperty(value = "产品名称")
    private java.lang.String productName;
    /**产品数量*/
    @Excel(name = "产品数量", width = 15)
    @ApiModelProperty(value = "产品数量")
    private java.math.BigDecimal productCount;
    /**产品规格*/
    @Excel(name = "产品规格", width = 15)
    @ApiModelProperty(value = "产品规格")
    private java.lang.String productSpecs;
    /**物料编号*/
    @Excel(name = "物料编号", width = 15)
    @ApiModelProperty(value = "物料编号")
    @Dict(dictTable = "bas_material_category", dicText = "code", dicCode = "id")
    private java.lang.String materialId;
    /**计量单位*/
    @Excel(name = "计量单位", width = 15)
    @ApiModelProperty(value = "计量单位")
    @Dict(dictTable = "bas_measure_unit", dicText = "name", dicCode = "id")
    private java.lang.String unitId;
    /**备注*/
    @Excel(name = "标签备注", width = 15)
    @ApiModelProperty(value = "标签备注")
    private java.lang.String labelRemarks;
    /**单价*/
    @Excel(name = "单价", width = 15)
    @ApiModelProperty(value = "单价")
    private java.math.BigDecimal unitPrice;
    /**总价格*/
    @Excel(name = "总价格", width = 15)
    @ApiModelProperty(value = "总价格")
    private java.math.BigDecimal totalPrice;
    /**配方*/
    @Excel(name = "配方", width = 15)
    @ApiModelProperty(value = "配方")
    @Dict(dictTable = "bas_product_formula", dicText = "pf_name", dicCode = "id")
    private java.lang.String formularId;
    /**产品类型*/
    @Excel(name = "产品类型", width = 15)
    @ApiModelProperty(value = "产品类型")
    @Dict(dicCode = "erp_order_product_type")
    private java.lang.String productType;
    /**工序*/
    @Excel(name = "工序", width = 15)
    @ApiModelProperty(value = "工序")
    @Dict(dictTable = "zz_device_type", dicText = "device_tpye_name", dicCode = "id")
    private java.lang.String processId;
    /**类型*/
    @Excel(name = "类型", width = 15)
    @ApiModelProperty(value = "类型")
    @Dict(dicCode = "product_order_type")
    private java.lang.String proType;
    /**切张总价*/
    @Excel(name = "切张总价", width = 15)
    @ApiModelProperty(value = "切张总价")
    private BigDecimal qzTotal;
    /**是否完成*/
    @Excel(name = "是否完成", width = 15)
    @ApiModelProperty(value = "是否完成")
    @Dict(dicCode = "yn")
    private String isStatus;
    /**胶水*/
    @Excel(name = "胶水", width = 15)
    @ApiModelProperty(value = "胶水")
    private String jsId;
    /**是否打印金额*/
	@Dict(dicCode = "yn")
	private java.lang.String isPrintMoney;
	/**是否同步修改应收账款*/
    private String isSynchronized;

}
